home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1996 #6 / Amiga Plus CD - 1996 - No. 06.iso / pd / daten / abook / arexx / dotalk.abx < prev    next >
Text File  |  1995-09-13  |  4KB  |  111 lines

  1. /*
  2. **  $VER: doTalk.rexx 01.11 (13.09.95) © Aris Basic
  3. **
  4. **
  5. **  PROGRAMNAME:
  6. **      doTalk.rexx
  7. **
  8. **  FUNCTION:
  9. **
  10. **      Does an UNIX Compatabile Talk or AmiChat Request.
  11. **
  12. **      This macro needs AmiTCP (© AmiTCP/IP Group) or somthing similar
  13. **      and AmiTALK for Talk Request and AmiCHAT for Chat Request (bot © Brian Gunn)
  14. **
  15. **      WARNING !!! bot programs should be in AMITCP:bin/ or INET:bin/
  16. **
  17. **  STARTING:
  18. **      From any where with Args path : TALK/S,CHAT/S or without Args
  19. **      ABook Server or ABook must be Running !!!
  20. **
  21. **  $HISTORY:
  22. **
  23. **   11.05.95 : 01.00 : initial release
  24. **   06.09.95 : 01.10 : addapted to ABook 01.00
  25. **   13.09.95 : 01.11 : some dummy things removed :)
  26. **
  27. **
  28. */
  29.  
  30. path='amitcp:bin/'
  31.  
  32. /*
  33. **  CONVERT THIS TO INET: WHEN YOU HAVE MLINK OR AS225
  34. */
  35.  
  36. OPTIONS RESULTS
  37. PARSE ARG mode
  38. mode=UPPER(mode)
  39.  
  40. IF ~Show('P','ADDRESS_BOOK.1') THEN DO
  41.                                     IF Show('P','ABOOK_SERVER') THEN CALL server()
  42.                                     SAY 'Kann Address-Book oder ABook-Server nicht finden!'
  43.                                     EXIT 10
  44.                                   END
  45. ADDRESS 'ADDRESS_BOOK.1'
  46. 'FIRST SELECTED'
  47. lock=RESULT
  48. IF ((lock='RESULT')|(lock=0)) THEN DO
  49.                     IF Show('P','ABOOK_SERVER') THEN CALL server()
  50.                     'REQUESTRESPONSE PROMPT="Kein Eintrag selektiert!" TITLE="FEHLER"'
  51.                     EXIT 10
  52.                     END
  53. main:
  54. 'LOCK ENTRY='lock
  55. IF rc=5 THEN DO
  56.     'REQUESTRESPONSE PROMPT="Eintrag wird bereits benutzt!" TITLE="FEHLER" BUTTONS="OK"'
  57.     call ende()
  58.     END
  59. IF rc=10 THEN call ende()
  60. 'QUERY STEM='DATA.
  61. IF rc=5 THEN DO
  62.     'REQUESTRESPONSE PROMPT="Lock Fehler !" TITLE="FEHLER" BUTTONS="OK"'
  63.     call ende()
  64.     END
  65. IF DATA.EMAIL.COUNT=0 THEN CALL noemail()
  66.  
  67. DO a=1 TO DATA.EMAIL.COUNT
  68.     desc=UPPER(DATA.EMAIL.a.DES)
  69.     IF ((desc='CHAT')&(mode='CHAT')) THEN DO
  70.                                 platz=POS(@,DATA.EMAIL.a.ADR)
  71.                                 lange=LENGTH(DATA.EMAIL.a.ADR)
  72.                                 user=SUBSTR(DATA.EMAIL.a.ADR,1,platz-1)
  73.                                 email=SUBSTR(DATA.EMAIL.a.ADR,platz+1)
  74.                                 cmd=path||'chat '||email||' '||user  
  75.                                 ADDRESS COMMAND 'RUN '||cmd
  76.                                 call ende()
  77.                                 END
  78.     IF (desc='TALK') THEN DO
  79.                                          cmd=path||'talk '||DATA.EMAIL.a.ADR 
  80.                                          ADDRESS COMMAND 'RUN '||cmd
  81.                                          call ende()
  82.                                          END
  83.     IF desc='INTERNET' THEN DO
  84.                             IF mode='TALK' THEN cmd=path||'talk '||DATA.EMAIL.a.ADR
  85.                             IF mode='CHAT' THEN DO
  86.                                 platz=POS(@,DATA.EMAIL.a.ADR)
  87.                                 lange=LENGTH(DATA.EMAIL.a.ADR)
  88.                                 user=SUBSTR(DATA.EMAIL.a.ADR,1,platz-1)
  89.                                 email=SUBSTR(DATA.EMAIL.a.ADR,platz+1)
  90.                                 cmd=path||'chat '||email||' '||user
  91.                             END
  92.                             IF ((mode='') & (mode=' ')) THEN cmd=path||'talk '||DATA.EMAIL.a.ADR
  93.                             ADDRESS COMMAND 'RUN '||cmd
  94.                             call ende()
  95.                             END
  96. END
  97. ende:
  98. 'UNLOCK 'lock
  99. EXIT 0
  100. server:
  101. ADDRESS 'ABOOK_SERVER'
  102. 'SELECT STEM='VAR.
  103. lock=VAR.1
  104. call main()
  105. noemail:
  106. 'UNLOCK 'lock
  107. 'REQUESTRESPONSE PROMPT="Dieser Eintrag hat keine Email!" TITLE="FEHLER" BUTTONS="OK"'
  108. Exit 10
  109.  
  110.  
  111.